package com.lzc.tlmail.tlmailmenber.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lzc.common.utils.PageUtils;
import com.lzc.common.vo.OauthUser;
import com.lzc.tlmail.tlmailmenber.entity.MemberEntity;
import com.lzc.tlmail.tlmailmenber.exception.PhoneExitsException;
import com.lzc.tlmail.tlmailmenber.exception.UserNameExitsException;
import com.lzc.tlmail.tlmailmenber.vo.LoginVo;
import com.lzc.tlmail.tlmailmenber.vo.RegistVo;

import java.util.Map;

/**
 * 会员
 *
 * @author lzc
 * @email 1029669636@gmail.com
 * @date 2020-07-26 19:25:14
 */
public interface MemberService extends IService<MemberEntity> {

    PageUtils queryPage(Map<String, Object> params);

    void regist(RegistVo registVo);

    void selectUserByUserName(String userName) throws UserNameExitsException;

    void selectUserByPhone(String phone) throws PhoneExitsException;

    MemberEntity login(LoginVo loginVo);

    MemberEntity login(OauthUser oauthUser) throws Exception;
}

